import { NgModule } from '@angular/core'
import { SharedModule } from '@shared'
import { OperationsRoutingModule } from './operations-routing.module'
import { OperationsService } from './operations-abstract.service'
import { OperationsAlinterService } from './operations-alinter.service'
import { HoldReleaseModule } from './hold-release/hold-release.module'
import { ChargeBackModule } from './charge-back/charge-back.module'
import { ChargeBackDataService } from './charge-back/charge-back.data.service'
import { DepositModule } from './deposit/deposit.module'
import { ManualAuthModule } from './manual-auth/manual-auth.module'

const COMPONENTS = []
const COMPONENTS_NOROUNT = []

@NgModule({
  imports: [
    SharedModule,
    OperationsRoutingModule,
    HoldReleaseModule,
    ChargeBackModule,
    DepositModule,
    ManualAuthModule,
  ],
  declarations: [
    ...COMPONENTS,
    ...COMPONENTS_NOROUNT
  ],
  providers: [
    { provide: OperationsService, useClass: OperationsAlinterService },
    ChargeBackDataService,
  ],
  entryComponents: COMPONENTS_NOROUNT
})
export class OperationsModule { }
